/* $Id: UserReqDAO.java 
 * Copyright (C) 2011, TRAKHEES
 *  
 * Revision History
 *
 * Date  			Author 		    	Remarks
 * ---------------------------------------------------------------------------------
 *
 */
package ae.pcfc.etks.online.common.dao;

import ae.pcfc.etks.online.common.domain.UserReq;

public interface UserReqDAO {

	/**
	 * add
	 * Method to add the user registration request in the database
	 * @param userReq
	 * void
	 */
	public void add(UserReq userReq);

	/**
	 * findByApplicationId
	 * Method to find the user registration request by application id
	 * @param applicationId
	 * @return
	 * UserReq
	 */
	public UserReq findByApplicationId(String applicationId);

	/**
	 * findByUserName
	 * Method to find the user registration request by username
	 * @param userName
	 * @return
	 * UserReq
	 */
	public UserReq findByUserName(String userName);

	/**
	 * findByEmail
	 * Method to find the user registration request by email address
	 * @param email
	 * @return
	 * UserReq
	 */
	public UserReq findByEmail(String email);

	/**
	 * validateByPropertyName
	 * Method to validate the user based on the property
	 * @param strPropertyName
	 * @param strPropertyValue
	 * @return
	 * boolean
	 */
	public boolean validateByPropertyName(String strPropertyName,
			String strPropertyValue);

}
